An electronic device typically includes a keypad having a plurality of keys used for operating the electronic device. A processor of the electronic device typically detects user actuations of these keys and processes them accordingly. Since the processor has only a limited amount of inputs which can be used for such tasks, the inputs to the processor are deemed valuable. Therefore, it is advantageous to minimize the number of inputs required from a processor to detect key actuations.
Scanning methods have been commonly used for detecting key actuations and have somewhat reduced the number of inputs needed therefor. However, such methods typically employ a periodic toggling of an output of the processor, thereby undesirably introducing noise to electronic circuitry of the electronic device. Such noise can be particularly disadvantageous in an electronic device which performs radio frequency (RF) communications. In addition, scanning methods employ an algorithm for detection which is somewhat more complex than conventional detection methods. Therefore, it would be advantageous to employ a method which is simple and which does not require a periodically toggling of a processor's output.
Other conventional methods have reduced the number of inputs needed for detecting key actuations without generating the noise as described above. One such method is a matrix-type method, where each key toggles a unique row and column input to a processor. For example, if seven inputs of a processor are utilized, where four of the inputs are designated as row inputs and three of the inputs are designated as column inputs, twelve keys may be uniquely distinguished and detected (4.times.3=12). This method, however, has not fully maximized the number of keys which can be uniquely detected given a number of processor inputs.
Finally, it is advantageous for an electronic device to be able to distinguish and detect simultaneous key actuations in order to process them as necessary.